package com.sunny.fetch.pojo;

import javax.persistence.*;

@Table(name = "f_disclosure_date")
public class FDisclosureDate {
    @Id
    private Long tid;

    /**
     * TS代码
     */
    @Column(name = "ts_code")
    private String tsCode;

    /**
     * 最新披露公告日
     */
    @Column(name = "ann_date")
    private String annDate;

    /**
     * 报告期
     */
    @Column(name = "end_date")
    private String endDate;

    /**
     * 预计披露日期
     */
    @Column(name = "pre_date")
    private String preDate;

    /**
     * 实际披露日期
     */
    @Column(name = "actual_date")
    private String actualDate;

    /**
     * 披露日期修正记录
     */
    @Column(name = "modify_date")
    private String modifyDate;

    public FDisclosureDate(Long tid, String tsCode, String annDate, String endDate, String preDate, String actualDate, String modifyDate) {
        this.tid = tid;
        this.tsCode = tsCode;
        this.annDate = annDate;
        this.endDate = endDate;
        this.preDate = preDate;
        this.actualDate = actualDate;
        this.modifyDate = modifyDate;
    }

    public FDisclosureDate() {
        super();
    }

    /**
     * @return tid
     */
    public Long getTid() {
        return tid;
    }

    /**
     * @param tid
     */
    public void setTid(Long tid) {
        this.tid = tid;
    }

    /**
     * 获取TS代码
     *
     * @return ts_code - TS代码
     */
    public String getTsCode() {
        return tsCode;
    }

    /**
     * 设置TS代码
     *
     * @param tsCode TS代码
     */
    public void setTsCode(String tsCode) {
        this.tsCode = tsCode;
    }

    /**
     * 获取最新披露公告日
     *
     * @return ann_date - 最新披露公告日
     */
    public String getAnnDate() {
        return annDate;
    }

    /**
     * 设置最新披露公告日
     *
     * @param annDate 最新披露公告日
     */
    public void setAnnDate(String annDate) {
        this.annDate = annDate;
    }

    /**
     * 获取报告期
     *
     * @return end_date - 报告期
     */
    public String getEndDate() {
        return endDate;
    }

    /**
     * 设置报告期
     *
     * @param endDate 报告期
     */
    public void setEndDate(String endDate) {
        this.endDate = endDate;
    }

    /**
     * 获取预计披露日期
     *
     * @return pre_date - 预计披露日期
     */
    public String getPreDate() {
        return preDate;
    }

    /**
     * 设置预计披露日期
     *
     * @param preDate 预计披露日期
     */
    public void setPreDate(String preDate) {
        this.preDate = preDate;
    }

    /**
     * 获取实际披露日期
     *
     * @return actual_date - 实际披露日期
     */
    public String getActualDate() {
        return actualDate;
    }

    /**
     * 设置实际披露日期
     *
     * @param actualDate 实际披露日期
     */
    public void setActualDate(String actualDate) {
        this.actualDate = actualDate;
    }

    /**
     * 获取披露日期修正记录
     *
     * @return modify_date - 披露日期修正记录
     */
    public String getModifyDate() {
        return modifyDate;
    }

    /**
     * 设置披露日期修正记录
     *
     * @param modifyDate 披露日期修正记录
     */
    public void setModifyDate(String modifyDate) {
        this.modifyDate = modifyDate;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", tid=").append(tid);
        sb.append(", tsCode=").append(tsCode);
        sb.append(", annDate=").append(annDate);
        sb.append(", endDate=").append(endDate);
        sb.append(", preDate=").append(preDate);
        sb.append(", actualDate=").append(actualDate);
        sb.append(", modifyDate=").append(modifyDate);
        sb.append("]");
        return sb.toString();
    }
}